//固定字典表、动态字典表、表单记录表、中间流水表、当前状态表、汇总分析表


var _DBconfig = {
	//【字段0】【字段别名1】【类型2】【主键类型3】【不为空4】【默认值5】【字段说明6】
	//【自动类型】"" :非主键, pt: 普通主键，zz：自增主键，uu：uuid主键，sj:时间戳
	//【不为空】0|"" :可以为空,1:不可为空
	//配置项表	
	my_conf: {
		tablename: "my_conf",
		fields: {
			"k": ["配置名称", "t", "pt", "1", "0", "key"],
			"v": ["json文本", "tx", "", "", "1", "组格式 [{text:..,value:..,children:[..]}]"],
		},
	},
	//,重要资料表,把各种的对象信息保存进这张表,
	info: {
		tablename: "info",
		fields: {
			"k": ["配置名称", "t", "pt", "1", "0", "财务科目,系统配置,个人属性等..."],
			"v": ["json文本", "tx", "", "", "1", "对象格式 {'k':v...} "],
		},
	},

	//干系人资料
	users: {
		tablename: "users",
		fields: {
			"id": ["干系人编号", "i", "zz", "1", "1", ""],
			"s1": ["状态", "i", "", "", "1", "1 有效，0作废"],
			"ctime": ["登记日期", "dt", "", "", "", ""],
			"role": ["角色", "i", "", "", "0", "1供应商（上家），2客户(下家),0 未知"],
			"ulevel": ["等级", "t", "", "", "", "星级"],
			"score": ["积分", "l", "", "", "", "积分"],
			"uname": ["昵称", "t", "", "", "", ""],
			"sex": ["性别", "t", "", "", "", ""],
			"tel": ["手机", "t", "", "", "", ""],
			"sfz": ["身份证", "t", "", "", "", ""],
			"ssx": ["省市县", "t", "", "", "", ""],
			"addr": ["地址", "t", "", "", "", ""],
			"py": ["拼音缩写", "t", "", "", "", ""],
			"uimg": ["头像", "tl", "", "", "", ""],
			"usign": ["标签", "tl", "", "", "", ""],
			"cgroup": ["分组", "t", "", "", "", ""],
			"uqq": ["QQ", "t", "", "", "", ""],
			"wx": ["微信", "t", "", "", "", ""],
			"mail": ["邮箱", "t", "", "", "", ""],
			"remark": ["备注", "t", "", "", "", ""]			
		},
		key: "id",
		index: "uname"
	},

	
	//干系人钱包
	user_act: {
		tablename: "user_act",
		fields: {
			"id": ["干系人", "i", "pt", "1", "1", ""],
			"l1": ["保证金", "ld", "", "", "", "单位：分,钱，存款,累计"],
			"l2": ["应收款", "ld", "", "", "", "单位：分,我欠uid，uid应收我多少钱"],
			"l3": ["应付款", "ld", "", "", "", "单位：分,uid欠我，uid应付我多少钱"],
			"l4": ["采购额", "ld", "", "", "", "单位：分,我从uid 处累计采购金额"],
			"l5": ["销售额", "ld", "", "", "", "单位：分,uid累计从我处购买金额"],			
		},
		key: "id"
	},
	//干系人在途商品
	user_good: {
		tablename: "user_good",
		fields: {
			"id": ["干系人", "i", "", "", "1", ""],			
			"gid": ["商品", "t", "", "", "", ""],
			"l1": ["应发数量", "l", "", "", "", "uid 应发给我的货"],
			"l2": ["已发数量", "l", "", "", "", "uid 已发给我的货"],
			"l3": ["应收数量", "l", "", "", "", "uid 应收到我的货"],
			"l4": ["已收数量", "l", "", "", "", "uid 已收到我的货"]
		},
		key: "id, gid"
	},
	//物品表 


	good: {
		tablename: "good",
		fields: {
			"id": ["编码", "i", "zz", "1", "0", "编码"],
			"i1": ["物品分类", "i", "", "", "", ""],
			"i2": ["单位体积", "id", "", "", "", " 单位：(ml)(cm³)"],
			"i3": ["单位重量", "i", "", "", "", " 单位：克"],
			"i4": ["标准进价", "id", "", "", "", "单位：分"],
			"i5": ["标准售价", "id", "", "", "", "单位：分"],
			"i6": ["保质期", "i", "", "", "", "单位:日"],			
			"i7": ["缩略图", "i", "", "", "", "组图索引"],
			"t1": ["物品名称", "t", "", "", "", ""],			
			"t2": ["条码", "t", "", "1", "0", "条码或手工输入编码"],
			"t3": ["拼音缩写", "t", "", "", "", ""],
			"t4": ["产地", "t", "", "", "", ""],			
			"t6": ["包装", "t", "", "", "", ""],
			"tl1": ["单位规格型号", "tl", "", "", "", ""],
			"tl2": ["使用范围", "tl", "", "", "", ""],
			"tx2": ["上传组图", "tx", "", "", "", ""],
			"tx1": ["说明", "tx", "", "", "", ""],
			"is1": ["状态", "i", "", "", "3", "2 是否记录库存，1是否作废"]
		},
		key: "id",
		index: "i1"
	},
	//优惠表
	goods_price: {
		tablename: "goods_price",
		fields: {
			"id": ["营销案编号", "i", "zz", "1", "0", ""],
			"gid": ["物品编号", "t", "", "", "", "条码或手工输入编码"],
			"t1": ["适用等级", "i", "", "", "", ""],
			"i1": ["售价", "id", "", "", "", "单位：分"],
			"i2": ["折扣", "id", "", "", "", "100%"],
			"i3": ["折扣价", "id", "", "", "", "单位：分"],
			"dt1": ["开始时间", "dt", "", "", "", ""],
			"dt2": ["结束时间", "dt", "", "", "", ""],
			"is1": ["状态", "i", "", "", "3", "2 是否记录库存，1是否作废"]
		},
		key: "id"
	},

	//业务表
	//采购|销售|红冲单，状态：开启，确认，关闭 以最后一次下单时间为准
	//"步骤" 0 作废，1 草稿，2)制定计划:出库/入库,3)审核后发货/签收 转财务记账,4)归档|转入历史表,注：付款流程不在此流程中"]
	flow: {
		tablename: "flow",
		fields: {
			"id": ["表单编号", "l", "sj", "1", "0", ""],
			
			"ymd": ["年月日", "i", "", "", "", ""],
			"ctime": ["创建日期", "dt", "", "", "", ""],
			"uid": ["干系人", "i", "", "", "", "空（盘点）|供应商|客户编号"],
			"t1": ["业务代码", "t", "", "", "", "业务代码  见  WorkType   "],
			"t2": ["步骤", "t", "", "", "", ""],
			"l1": ["金额", "ld", "", "", "", "单位：分"],
			"l2": ["品种数", "i", "", "", "", ""],
			"l3": ["总数", "i", "", "", "", ""],
			"l4": ["总重量", "ld", "", "", "", "单位：克"],
			"l5": ["总体积", "ld", "", "", "", "单位：(ml)(cm³)"],
			"dt1": ["下单日期", "dt", "", "", "", ""],
			"dt2": ["结单日期", "dt", "", "", "", ""],
			"tx1": ["备注", "tx", "", "", "", ""]
		},
		key: "id"
	},
	//关于批次问题 在本系统中不处理
	//采购|销售|退货单 明细，
	//明细关闭后不能改，确认后数量不可以调整，物品编号不可重复
	flow_link: {
		tablename: "flow_link",
		fields: {
			"id": ["流水编号", "i", "zz", "1", "0", ""],
			"ymd": ["年月日", "i", "", "", "", ""],
			"fid": ["表单编号", "l", "", "", "", ""],
			"uid": ["干系人", "i", "", "", "", "空（盘点）|供应商|客户编号"],
			"gid": ["物品编号", "t", "", "", "", ""],
			"t1": ["业务代码", "t", "", "", "", "业务代码 见  WorkType "],
			"i1": ["价格", "id", "", "", "", "单位：分"],
			"i2": ["数量", "i", "", "", "", ""],
			"l1": ["总金额", "ld", "", "", "", "单位：分"],
			"l2": ["总重", "ld", "", "", "", "单位：克"],
			"l3": ["总体积", "ld", "", "", "", "单位：(ml)(cm³)"],
			"tx1": ["备注", "tx", "", "", "", ""]
		},
		key: "id"
	},


	//盘点和红冲不是一个概念,红冲是对A操作的反向操作,盘点是对数量非系统改变的检测记录
	//盘点损益单 明细，明细关闭后不能改，确认后数量不可以调整

	//钱货分离
	//出入库流水表 
	good_book: {
		tablename: "good_book",
		fields: {
			"id": ["流水编号", "i", "zz", "1", "0", "自增"],
			"is1": ["状态", "i", "", "", "1", "1 有效，0作废"],
			"uid": ["干系人", "i", "", "", "", ""],
			"ymd": ["年月日", "i", "", "", "", ""],
			"gid": ["物品编号", "t", "", "", "", ""],
			"t1": ["业务代码", "t", "", "", "", "业务代码 WorkType"],
			"l1": ["标准价", "id", "", "", "", "单位：分"],
			"l2": ["实际价", "id", "", "", "", "单位：分"],
			"l3": ["数量", "l", "", "", "", ""],
			"l4": ["金额", "ld", "", "", "", "单位：分"],
			"l5": ["折扣", "i", "", "", "", "100%"],
			"t2": ["单号", "t", "", "", "", ""],
			"dt1": ["日期", "dt", "", "", "", ""],
			"tx1": ["备注", "tx", "", "", "", ""]
		},
		key: "id"
	},
	//交易凭证
	act_book: {
		tablename: "act_book",
		fields: {
			"id": ["凭证编号", "i", "zz", "1", "0"],
			"is1": ["状态", "i", "", "", "1", "1 有效，0作废"],
			"uid": ["干系人", "i", "", "", "", ""],
			"ymd": ["年月日", "i", "", "", "", ""],
			"l1": ["交易额", "ld", "", "", "", "单位：分，正,不能为负数"],
			"t1": ["业务代码", "t", "", "", "", "业务代码 WorkType"],
			"t2": ["单号", "t", "", "", "", ""],
			"dt1": ["日期", "dt", "", "", "", ""],
			"tx1": ["说明", "tl", "", "", "", ""]
		},
		key: "id"
	}
	//每个月与供应商和代理商交易的特定商品的买入或卖出的最价格近一次价格，数量
	//财务 收款|付款单  状态：付款后核减采购单，收款后核减销售单
	//不要试图把收付款和订单结算同时进行，现实中因为收付款等问题
	//用户销售报表明细
	//[ "月份", "客户","商品编码", "月最低价格","月最高价格", "月销费数量","月销费金额","月退货数量","月退货金额" ]
	//商品报表1
	//[ "月份", "商品编码", "月初库存", "月采购数量","月销售数量","月售退数量","月采退数量","月盘损数量"]
	//商品报表2
	//[ "月份", "商品编码", "月初库存价值", "月采购金额", "月销售金额","月售退金额","月采退金额","月损失金额"]
	//价格曲线数据
	//[ "月份", "商品编码",  "月最低价格","月最高价格"]	
	//财务报表2
	//[ "月份", "客户", "月初应收款", "本月应收款", "月已收款"]
	//财务报表3
	//[ "记月份", "供应商","月初应付款", "本月应付款","月已付款"]BOOLEAN
};

//选择所有表
var getConfig = function(config) {
	var cc = config;
	var tablenames = [];
	for (var tablename in cc) {
		tablenames.push(tablename);
	}
	//console.log("tableNames", tablenames)
	return {
		"tableNames": tablenames,
		"getTable": function(tablename) {
			return cc[tablename];
		}	
	}
}(_DBconfig);
